/*
author:
start_date:
version:
*/

//website:

/*
thought:
*/

#include <iostream>

using namespace std;

int gcdEX(int a,int & x,int b,int & y,int c);
bool res(int a ,int &x,int b,int &y,int c);

int main(void) {
  int a,b,x,y;

  while(cin >> a >> b)
  {

    int r = gcdEX(a,x,b,y,1);

    if(r == 0)
    {
      std::cout << "NONE" << '\n';
    }
    else
    {
      std::cout << x << '\n';
    }

  }

  return 0;
}

int gcdEX(int a,int & x,int b,int & y,int c)
{
  int r = 0;
  if(b == 0)
  {
    if(c % a == 0)
    {
       x = c/a;
       return 1;
     }
    else return 0;
  }
  else
  {
    int s,t;
    r = gcdEX(b,s,a%b,t,c);
    x = t,y = s-(a/b)*t;
  //  std::cout << x << " " << y << '\n';

  }
  return r;

}//1表示有解，0表示无解；


// int gcdEX(int a,int & x,int b,int & y)
// {
//   if(b == 0)
//   {
//     x = 1;
//     y = 0;
//     return a;
//   }
//   int ans  = gcdEX(b,x,a%b,y);
//   int temp = x;
//   x = y ;
//   y = temp - a/b*y;
// }
//
// bool res(int a ,int &x,int b,int &y,int c)
// {
//   int d = gcdEX(a,x,b,y);
//     std::cout << d << '\n';
//   if(c%d != 0)
//     return false;
//   int k = c/d;
//   x = x*k;y=y*k;
//
//   return true;
// }
